package config

// 全局配置文件的struct类

/*
*
jwt的配置
*/
type JWTConfig struct {
	Key string `mapstructure:"key" json:"key"` //读取配置文件一定有mapstructure，否则
}

/*
*
redis的配置
*/
type RedisConfig struct {
	Host   string `mapstructure:"host" json:"host"`
	Port   int32  `mapstructure:"port" json:"port"`
	Expire int32  `mapstructure:"expire" json:"expire"`
}

/*
*
mysql的配置
*/
type MysqlConfig struct {
	Host     string `mapstructure:"host" json:"host"`
	Port     int32  `mapstructure:"port" json:"port"`
	Name     string `mapstructure:"name" json:"name"`
	Username string `mapstructure:"username" json:"username"`
	Password string `mapstructure:"password" json:"password"`
}

/*
*
读取配置文件
*/
type ServerConfig struct {
	Name      string      `mapstructure:"name" json:"name"`
	Port      int         `mapstructure:"port" json:"port"`
	Profile   string      `mapstructure:"profile" json:"profile"`
	JWTInfo   JWTConfig   `mapstructure:"jwt" json:"jwt"`
	MysqlInfo MysqlConfig `mapstructure:"mysql" json:"mysql"`
	RedisInfo RedisConfig `mapstructure:"redis" json:"redis"`
}
